<div class="page">
    <div class="page-header">
        <div class="page-title"><i class="iconfont icon-tips"></i> 系统帮助</div>
        <div class="page-breadcrumb">
            <el-breadcrumb separator="/">
                <el-breadcrumb-item :to="{path:'/dashboard'}">Home</el-breadcrumb-item>
                <el-breadcrumb-item>系统帮助</el-breadcrumb-item>
            </el-breadcrumb>
        </div>
    </div>
    <div class="page-body">
        <div class="spr"></div>
        <h3 class="no-margin">1、任务执行状态</h3>
        <div class="hr"></div>
        <ul>
            <li><b>SUCCESS：</b>任务执行成功。</li>
            <li><b>FAIL：</b>任务执行失败。</li>
            <li><b>VETOED：</b>任务被取消执行。</li>
        </ul>

        <div class="spr"></div>
        <h3 class="no-margin">2、任务触发方式</h3>
        <div class="hr"></div>
        <ul>
            <li><b>SCHEDULE：</b>由该任务配置的调度器触发。</li>
            <li><b>MANUAL：</b>用户手动触发。</li>
            <li><b>TMP：</b>用户通过新建临时任务触发。</li>
            <li><b>LINKAGE：</b>由其他任务联动触发。</li>
        </ul>

        <div class="spr"></div>
        <h3 class="no-margin">3、调度方式</h3>
        <div class="hr"></div>
        <ul>
            <li><b>SimpleTrigger：</b>指定从某一个时间开始，以一定的时间间隔（单位是毫秒）执行任务。</li>
            <li><b>CalendarIntervalTrigger：</b>类似于SimpleTrigger，指定从某一个时间开始，以一定的时间间隔执行的任务。 但是不同的是SimpleTrigger没办法指定每隔一个月执行一次（每月的时间间隔不是固定值），而CalendarIntervalTrigger支持的间隔单位有<b>秒，分钟，小时，天，星期，月，年</b>。</li>
            <li><b>DailyTimeIntervalTrigger：</b>指定每天的某个时间段内，以一定的时间间隔执行任务。并且它可以支持指定星期。它适合的任务类似于：指定每天9:00 至 18:00 ，每隔70秒执行一次，并且只要周一至周五执行。</li>
            <li><b>CronTrigger：</b>适合于更复杂的任务，它支持通过<b>Cron</b>语法来制定执行计划。</li>
        </ul>
        <el-alert :closable="false" type="warning" show-icon title="注意：系统限制任务执行频率不能高于3000ms/次，任务到达触发时间点时，系统会检测该任务上次执行时间，如果距上次执行间隔不到3000ms，该任务本次执行将被取消，并记录相应日志"></el-alert>

        <div class="spr"></div>
        <h3 class="no-margin">4、Cron表达式</h3>
        <div class="hr"></div>
        <p>格式：秒 分 时 日 月 周 年（年可以省略）</p>

        <div class="spr"></div>
        <h3 class="no-margin">5、联动任务配置</h3>
        <div class="hr"></div>
        待完善...
        <!--
        <div>联动任务表示主任务执行完成后，自动触发其他任务的机制，配置采用JSON格式，示例：</div>
        <pre class="bg-dark-white font-code">
    示例1:
    ["Hello.world1","Hello.world2"]
    //表示主任务执行完成后，立即触发Hello.world1和Hello.world2
        </pre>
        <pre class="bg-dark-white font-code">
    示例2:
    [
      {
        mode: "Trigger",
        task: "Hello.world1"
      }
    ]
    //表示主任务执行完成后，立即触发Hello.world1,该配置等同于["Hello.world1"]，mode表示联动模式，此处mode:Trigger表示触发一个已经存在的任务
        </pre>
        <pre class="bg-dark-white font-code">
    示例3:
    [
      {
        mode: "Trigger",
        delay: "3000",
        task: "hello.world"
      }
    ]
    //表示主任务执行完成后，延迟3000ms触发任务:hello.world
        </pre>
        <pre class="bg-dark-white font-code">
    示例4:
    [
      {
        mode: "Trigger",
        task: "hello.world",
        condition: "#time.getTime()<1564995363912"
      }
    ]
    //表示主任务执行完成后，如果condition计算结果为true，则立即触发任务:hello.world。condition中写SpEl表达
    //式，可用变量包含全局变量、主任务结果，变量详细描述见文章后续
        </pre>
        <pre class="bg-dark-white font-code">
    示例5:
    [
      {
        mode: "Trigger",
        task: "hello.world",
        delay: "3000",
        condition: "#time.getTime()<1564995363912"
      }
    ]
    //表示主任务执行完成后，如果condition计算结果为true，则延迟3000毫秒触发任务:hello.world。condition中写SpEl表达
    //式，可用变量包含全局变量、主任务结果，变量详细描述见文章后续
        </pre>
        <pre class="bg-dark-white font-code">
    示例6:
    [
      {
        mode: "Create",
        delay: "3000",
        task: {
          taskModule: "JustTestTaskModule",
          params: "{content:'hello'}"
        },
        condition: "#reponse_status==200 and #reponse_content.length()<100",
        exports:"{aa:11}"
      }
    ]
    //此处mode:'Create'表示联动模式为创建一个后续任务，主任务执行完成后，如果condition计算结果为true，则创建一个临时任务，临时任务配置如下：
    //taskModule:任务组件ID，可从创建常规任务时选择组件的下拉框获取
    //params:任务参数，同创建常规任务，可使用全局变量、主任务结果、exports暴露的变量
    //linkageRule:联动配置，同创建常规任务，可使用全局变量
        </pre>
        <el-alert title="注意：目前并没有对联动任务配置的合理性做严格检查，配置不当可能会造成环形联动（如：a -> b -> c -> a ...），请谨慎配置！" :closable="false" type="warning" show-icon></el-alert>
        &lt;!&ndash;<el-collapse v-model="title" accordion>
            <el-collapse-item title="执行临时任务" name="ExecTmpTask">
                待完善...
            </el-collapse-item>
            <el-collapse-item title="创建任务" name="CreateTask">

            </el-collapse-item>
            <el-collapse-item title="待完善" name="3">
                待完善...
            </el-collapse-item>
            <el-collapse-item title="待完善" name="4">
                待完善...
            </el-collapse-item>
        </el-collapse>&ndash;&gt;-->
    </div>
</div>